OIPA Setup - TomEE
- Create a directory on the TomEE server to store various configuration files for OIPA (i.e., /%Tomee_Home%/shared or C:\tomee\shared).
- Create subdirectories inside the directory from Step 1 called conf and lib.
- Copy PASJava-tomEE.war file from the OIPA distribution zip file into the webapps subdirectory of TomEE server (Ex : /%Tomee_Home%/webapps or D:\tomee\webapps).
- Rename the war to PASJava.war.
- The coherence version run on TomEE is Coherence CE 22.06.12. Make sure you copy the latest following configuration files from OIPA distribution zip/conf directory into the \shared\conf directory under TomEE server (This step is extremely important).
- coherence-cache-config.xml
- coherence-config.xml
- PAS.properties
- EDKeyValue.dat
- logging.properties
oipakeystore.p12
-
Copy the following files from the OIPA distribution zip/lib directory into the shared\lib directory:
commons-collections4-4.5.0.jar
jakarta.persistence-api-3.2.0.jar
spring-instrument-6.2.18.jar
ha-api-3.1.13.jar
policy-4.0.4.jar
streambuffer-2.1.0.jar
Download aspectj 1.9.1 jars from https://www.eclipse.org/downloads/download.php?file=/tools/aspectj/aspectj-1.9.1.jar
Open aspectjrt-1.9.1.jar with an unzipping software and retrieve aspectjrt.jar and aspectjweaver.jar from the lib folder.
Copy aspectjrt.jar and aspectjweaver.jar into libs sub-directory.
Copy the database drivers into lib directory of TomEE (%TomEE_Home%/lib) folder.
- Oracle – The necessary driver, ojdbc17-23.6.0.24.10.jar, is included in the libs directory of the OIPA Media Pack.
Note: Version 12.2.0.0 is also supported on Oracle 19c, which is LTS (Long Term Support). If Oracle 19c is used, the corresponding supported ojdbc driver version should be used in the step above.
Microsoft SQL Server- Use the compatible jdbc driver shipped with MS SQL Server software. These files are not available for download. Contact your IT department if you need assistance locating these files.
IBM DB2 – Use the compatible jdbc driver shipped with DB2 software. These files are not available for download. Contact your IT department if you need assistance locating these files.
These files are not available for download. Contact your IT department if you need assistance locating these files.
- Oracle – The necessary driver, ojdbc17-23.6.0.24.10.jar, is included in the libs directory of the OIPA Media Pack.
-
Use a text editor to open the PAS.properties file that you just copied to the server. The PAS.properties file contains properties for Oracle, SQL Server and DB2 database types, with the Oracle settings active by default. The inactive settings are commented out with a '#' character at the start of each line. To change a setting, remove the '#' from the required property setting, and insert it at the beginning of the setting you want to de-activate.
-
The properties setting must match the type of database being used.
Note: Refer to the System Properties document in the Oracle Insurance Policy Administration E62439-01 Documentation Library on the OTN for a complete list of all properties and allowed values.
- application.databaseType
- jpa.databasePlatform
-
Identify the default locale in the PAS.properties file. The locale selected will determine the translation that is loaded in the database for OIPA when it launches.
-
application.defaultLocale
-
-
If using an Oracle or Microsoft SQL Server database, skip this step. If using a DB2 database, you will need to modify the PAS.properties file to include configuration for case-insensitive searching. Modify the PAS.properties file to include the following line:
-
search.field.text.caseInsensitive=true
-
-
Use application.keyStorePath and application.keyStoreAlias.
-
application.keyStorePath - Absolute path including file name where the oipakeystore.p12 is located. Example: application.keyStorePath = /scratch/oipa/Oracle/oipa/conf/oipakeystore.p12.
-
application.keyStoreAlias - The alias is a unique identifier for the key entry (secret key) in the keystore.Do not modify this value unless the customer rotates the encryption key.
-
-
Use a text editor to open the logging.properties file that you just copied to the server.
-
Edit the path mention for property java.util.logging.FileHandler.pattern with new application log location i.e. if application log location is /home/OIPA/logs then set this value as java.util.logging.FileHandler.pattern = %h/OIPA/logs/oipa%u.log and make sure that directory created and has r/w permission.
-
-
Extension classes/jars developed using OIPA extension interfaces should be copied to PASJava-.war/WEB-INF/lib before copying PASJava.war to the war subdirectory. This is required for the extensions to work that an application like OIPA need to run.
-
Under the conf directory of TomEE (%TomEE_Home%/conf folder), the system.properties needs to be modified to enable TomEE to load classes from com.oracle.service package on server start up. Use a text editor to open the system.properties and add the openejb.classloader.forced-load=com.oracle.service,com.sun.xml property.
System.properties
openejb.classloader.forced-load=com.oracle.service,com.sun.xml
Set Environment Variables - TomEE
For Windows deployment we need to create setenv.bat file in the bin folder of extracted TomEE directory.
For Linux deployment we need to create setenv.sh file in the bin folder of extracted TomEE directory.
The following configuration needs to be placed in the setenv.bat file for Windows environment.
ClassPath
Note: If application uses trust store, then trust store passwords should be set otherwise they can be removed.
set CATALINA_OPTS=-Xms128m -Xmx1024m -XX:+UseG1GC
-Dtangosol.coherence.cacheconfig="C:/<Server Path>/shared/conf/coherence-cache-config.xml"
-Dtangosol.pof.config=com-adminserver-pas-web-pof-config.xml
-Dtangosol.coherence.override="C:/<Server Path>/shared/conf/coherence-config.xml"
-Dtangosol.coherence.distributed.localstorage=true
-Djava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory
-Dtangosol.coherence.mode=prod
-Djava.util.logging.config.file="C:/<Server Path>/shared/conf/logging.properties"
-Dserver.name="<Name of the server>"
set OIPA_KEYSTORE_PWD=changeit
set cycle.trustStorePassword=<Cycle truststore password>
set outbound.trustStorePassword=<Outbound truststore password>
For Linux Env in setenv.sh
ClassPath
export CATALINA_OPTS="-Xms128m -Xmx1024m -XX:+UseG1GC
-Dtangosol.coherence.cacheconfig=/Servers/TomEE/OIPAInstance/shared/conf/coherence-cache-config.xml
-Dtangosol.pof.config=com-adminserver-pas-web-pof-config.xml
-Dtangosol.coherence.override=/Servers/TomEE/OIPAInstance/shared/conf/coherence-config.xml
-Dtangosol.coherence.distributed.localstorage=true -Dtangosol.coherence.mode=prod
-Djava.util.logging.config.file=/Servers/TomEE/OIPAInstance/shared/conf/logging.properties
-Djava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory
-Dserver.name=<Name of the server>"
export OIPA_KEYSTORE_PWD="changeit"
export cycle.trustStorePassword=<Cycle truststore password>
export outbound.trustStorePassword=<Outbound truststore password>
1. To enable remote debugging
Debug
-agentlib:jdwp=transport=dt_socket,address=1043,server=y,suspend=n
2. To enable JMX event to Admin Console Application
Add to Existing class path
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.autodiscovery=true -Dcom.sun.management.jmxremote.port=<Unique Port Number>
If servers JMX port is not getting exposed to jconsole or adminconsole use the below argument as well in that server arguments. The IP address should be server actual IP address.
RMI Port
-Djava.rmi.server.hostname=ipaddress